package fr.soat.agileconference2010.classehyperactive;

import java.util.List;

import fr.soat.agileconference2010.melangetypeobjets.Client;
import fr.soat.agileconference2010.polymorphisme.Commande;

public class CommandeManager {
  private BanqueService banqueService;
  private EmailService emailService;
  
  public Commande regrouperCommande(Commande commande1, Commande commande2) { return null; }
  public void ajouterArticle(Commande commande, Article article){}
  public void supprimerArticle(Commande commande){}
  
  public void facturer(Commande commande, Client client) {
    banqueService.prelever(client.getCompteBancaire(), commande.getTotal());
    emailService.notifierPrelevement(client.getEmail());
  }
  
  public void annulerCommande(Commande commande) {}
  public void sauvegarderCommande(Commande commande, String nom) {}
  public Commande recupererCommande(String nom) { return null; }
  public List<Commande> listerCommandes(Client client){ return null;}
  public BanqueService getBanqueService() {
    return banqueService;
  }
  public void setBanqueService(BanqueService banqueService) {
    this.banqueService = banqueService;
  }
  public EmailService getEmailService() {
    return emailService;
  }
  public void setEmailService(EmailService emailService) {
    this.emailService = emailService;
  }
}
